#pragma once
#include <iostream>
#include <vector>
#include <string>

using namespace std;

#include "Triple.h"

typedef int INTEGER;
typedef int INDEX;
typedef int LINENUM;
typedef bool BOOLEAN;
typedef string NODETYPE;
typedef string LINKTYPE;


class Modifies
{
private:
	vector<Triple> _table;
	INTEGER _size;
public:
	Modifies();
	BOOLEAN setModifies(LINENUM line, INDEX procIndex, INDEX varIndex);
	vector <Triple> getModifies();
	Triple getModifies(INDEX);
	INTEGER getModifiesSize();
	vector<INDEX> getVariables(LINENUM);
	vector<LINENUM> getLines(LINENUM);
	BOOLEAN isModifies(LINENUM, INDEX);
};

